<html>
<head><meta charset="utf-8"><title>TAIT #83190, #78450 · wg-traits · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/index.html">wg-traits</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html">TAIT #83190, #78450</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="242798980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242798980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242798980">(Jun 15 2021 at 20:59)</a>:</h4>
<p>Branch  on nikomatsakis repo tait-issue-83190</p>



<a name="242798997"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242798997" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242798997">(Jun 15 2021 at 21:00)</a>:</h4>
<p>Doesn't have any fix now</p>



<a name="242799046"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242799046" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242799046">(Jun 15 2021 at 21:00)</a>:</h4>
<p>But I might push some documentation commits there</p>



<a name="242809732"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242809732" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242809732">(Jun 15 2021 at 22:53)</a>:</h4>
<p>So <span class="user-mention" data-user-id="116113">@lqd</span> points out that <a href="https://github.com/rust-lang/rust/pull/85755">https://github.com/rust-lang/rust/pull/85755</a> by <span class="user-mention" data-user-id="328097">@BN</span> targets these bugs</p>



<a name="242809746"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242809746" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242809746">(Jun 15 2021 at 22:53)</a>:</h4>
<p>That PR doesn't seem quite right to me, <span class="user-mention" data-user-id="328097">@BN</span>, but I'm digging through the logs to try to give more actionable feedback :)</p>



<a name="242809749"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242809749" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242809749">(Jun 15 2021 at 22:53)</a>:</h4>
<p>It's been helpful though!</p>



<a name="242812132"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812132" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812132">(Jun 15 2021 at 23:24)</a>:</h4>
<p>Ah, the problem is different than I thought</p>



<a name="242812140"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812140" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812140">(Jun 15 2021 at 23:24)</a>:</h4>
<p>consider this example</p>



<a name="242812162"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812162" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812162">(Jun 15 2021 at 23:24)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="k">impl</span><span class="o">&lt;'</span><span class="na">a</span><span class="p">,</span><span class="w"> </span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="n">AssociatedImpl</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">S</span><span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">    </span><span class="k">type</span> <span class="nc">ImplTrait</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="o">&amp;'</span><span class="na">a</span><span class="w"> </span><span class="n">T</span><span class="p">;</span><span class="w"></span>

<span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="242812171"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812171" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812171">(Jun 15 2021 at 23:25)</a>:</h4>
<p>what do you get with this code? Answer: error</p>



<a name="242812181"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812181" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812181">(Jun 15 2021 at 23:25)</a>:</h4>
<p>because <code>'a</code> cannot be used in the value of an associated type</p>



<a name="242812342"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812342" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812342">(Jun 15 2021 at 23:26)</a>:</h4>
<p>the ICE here is arising, fundamentally, because the <code>type ImplTrait = impl Trait</code> is shorthand for something like</p>



<a name="242812363"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812363" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812363">(Jun 15 2021 at 23:27)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="k">type</span> <span class="nc">Foo</span><span class="o">&lt;'</span><span class="na">a</span><span class="p">,</span><span class="w"> </span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">impl</span><span class="w"> </span><span class="n">Trait</span><span class="p">;</span><span class="w"></span>

<span class="k">impl</span><span class="o">&lt;'</span><span class="na">a</span><span class="p">,</span><span class="w"> </span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="n">AssociatedImpl</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">S</span><span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">    </span><span class="k">type</span> <span class="nc">ImplTrait</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Foo</span><span class="o">&lt;'</span><span class="na">a</span><span class="p">,</span><span class="w"> </span><span class="n">T</span><span class="o">&gt;</span><span class="p">;</span><span class="w"></span>

<span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="242812365"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812365" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812365">(Jun 15 2021 at 23:27)</a>:</h4>
<p>and the value of an associated type is not allowed to reference <code>'a</code></p>



<a name="242812741"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242812741" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242812741">(Jun 15 2021 at 23:31)</a>:</h4>
<p>I am debating -- I guess the thing to do would be to issue an error here -- but also, we have various rules about which lifetimes are captured, I'm a <em>bit</em> surprised that <code>'a</code> is being captured in the first place</p>



<a name="242813045"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242813045" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242813045">(Jun 15 2021 at 23:35)</a>:</h4>
<p><em>oh</em></p>



<a name="242813054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242813054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242813054">(Jun 15 2021 at 23:35)</a>:</h4>
<p><code>'a</code> is considered constrained</p>



<a name="242813059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242813059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242813059">(Jun 15 2021 at 23:35)</a>:</h4>
<p>/me thinks</p>



<a name="242813184"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242813184" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242813184">(Jun 15 2021 at 23:37)</a>:</h4>
<p>this correctly errors</p>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="k">impl</span><span class="o">&lt;'</span><span class="na">a</span><span class="p">,</span><span class="w"> </span><span class="n">T</span>: <span class="nc">Associated</span><span class="o">&gt;</span><span class="w"> </span><span class="n">AssociatedImpl</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">S</span><span class="o">&lt;</span><span class="n">T</span><span class="o">&gt;</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">    </span><span class="k">type</span> <span class="nc">ImplTrait</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">impl</span><span class="w"> </span><span class="n">core</span>::<span class="n">fmt</span>::<span class="n">Debug</span><span class="p">;</span><span class="w"></span>

<span class="w">    </span><span class="k">fn</span> <span class="nf">f</span><span class="p">()</span><span class="w"> </span>-&gt; <span class="nc">Self</span>::<span class="n">ImplTrait</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">        </span><span class="c1">//~^ ERROR unexpected concrete region in borrowck: ReEarlyBound(0, 'a)</span>
<span class="w">        </span><span class="p">()</span><span class="w"></span>
<span class="w">    </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
</code></pre></div>



<a name="242816731"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242816731" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242816731">(Jun 16 2021 at 00:31)</a>:</h4>
<p><span class="user-mention" data-user-id="124288">@oli</span> I'm kind of spinning my wheels here -- I'm trying to track down how this particular predicate appears in the parameter environment</p>



<a name="242816745"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242816745" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242816745">(Jun 16 2021 at 00:31)</a>:</h4>
<div class="codehilite"><pre><span></span><code>ProjectionPredicate(ProjectionTy { substs: [S&lt;T&gt;], item_def_id: DefId(0:4 ~ issue_83190[317d]::AssociatedImpl::ImplTrait) }, Opaque(DefId(0:16 ~ issue_83190[317d]::{impl#0}::ImplTrait::{opaque#0}), [ReEarlyBound(0, &#39;a), T])
</code></pre></div>



<a name="242816759"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242816759" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242816759">(Jun 16 2021 at 00:31)</a>:</h4>
<p>basically a predicate that <code>ProjectionEq(&lt;S&lt;T&gt; as AssociatedImpl&gt;::ImplTrait, OpaqueType&lt;'a, T&gt;&gt;</code></p>



<a name="242816764"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242816764" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242816764">(Jun 16 2021 at 00:32)</a>:</h4>
<p>obviously the user didn't write this by hand</p>



<a name="242816804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242816804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242816804">(Jun 16 2021 at 00:32)</a>:</h4>
<p>so I figure it's probably injected by some aspect of impl trait desugaring</p>



<a name="242817246"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242817246" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242817246">(Jun 16 2021 at 00:39)</a>:</h4>
<p>is this ringing any bells?</p>



<a name="242836538"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242836538" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242836538">(Jun 16 2021 at 06:47)</a>:</h4>
<p>i thought that predicate is created by predicates_of. maybe <a href="https://github.com/rust-lang/rust/blob/9f8012e3aa8d5b087100ecd7b109ed3dd2859cca/compiler/rustc_typeck/src/astconv/mod.rs#L1158">https://github.com/rust-lang/rust/blob/9f8012e3aa8d5b087100ecd7b109ed3dd2859cca/compiler/rustc_typeck/src/astconv/mod.rs#L1158</a> ?</p>



<a name="242836561"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242836561" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242836561">(Jun 16 2021 at 06:47)</a>:</h4>
<p>so "unrelated" to opaque types</p>



<a name="242856506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856506">(Jun 16 2021 at 09:44)</a>:</h4>
<p>I realized I am in the wrong place</p>



<a name="242856562"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856562" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856562">(Jun 16 2021 at 09:44)</a>:</h4>
<p>I got a bit turned around somehow</p>



<a name="242856566"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856566" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856566">(Jun 16 2021 at 09:44)</a>:</h4>
<p>also, rr is awesome</p>



<a name="242856591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856591">(Jun 16 2021 at 09:44)</a>:</h4>
<p>the predicate in question is created by <a href="https://github.com/rust-lang/rust/blob/7bd795387bbcfc4454541bdf20d51d385033e0fa/compiler/rustc_typeck/src/check/compare_method.rs#L1198-L1232">this code in <code>compare_method</code></a></p>



<a name="242856641"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856641" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856641">(Jun 16 2021 at 09:45)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450/near/242856566">said</a>:</p>
<blockquote>
<p>also, rr is awesome</p>
</blockquote>
<p>specifically: <code>rr record -M</code>, which adds a timestamp to every log, so you can do <code>rr reply --goto X</code> and jump right to the code that produced that log</p>



<a name="242856677"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856677" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856677">(Jun 16 2021 at 09:45)</a>:</h4>
<p>we should add an option to rustc so you can do <code>rustc --rr</code> and it re-execs itself or something</p>



<a name="242856689"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242856689" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242856689">(Jun 16 2021 at 09:45)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> <span aria-label="point up" class="emoji emoji-1f446" role="img" title="point up">:point_up:</span> wdyt?</p>



<a name="242858143"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242858143" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242858143">(Jun 16 2021 at 09:56)</a>:</h4>
<p>unfortunately, the vscode integration didn't quite work for me.</p>



<a name="242858803"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242858803" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242858803">(Jun 16 2021 at 10:02)</a>:</h4>
<p>hmm, sadly rn and friends don't work for me either</p>



<a name="242858807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242858807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242858807">(Jun 16 2021 at 10:02)</a>:</h4>
<p>well, the backtrace is already pretty helpful</p>



<a name="242859025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242859025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242859025">(Jun 16 2021 at 10:04)</a>:</h4>
<p>...and maybe I think the original PR <em>was</em> correct after all</p>



<a name="242859288"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242859288" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242859288">(Jun 16 2021 at 10:07)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450/near/242856591">said</a>:</p>
<blockquote>
<p>the predicate in question is created by <a href="https://github.com/rust-lang/rust/blob/7bd795387bbcfc4454541bdf20d51d385033e0fa/compiler/rustc_typeck/src/check/compare_method.rs#L1198-L1232">this code in <code>compare_method</code></a></p>
</blockquote>
<p>lol I had this open earlier and was like "nah, that can't be it"</p>



<a name="242860494"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860494" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> BN <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860494">(Jun 16 2021 at 10:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Originally I also thought that this should error. If we use a GAT in this example <code>impl&lt;T: Associated&lt;A&lt;'a&gt; = &amp;'a ()&gt;&gt; AssociatedImpl for S&lt;T&gt;</code> it works, as expected. In general I still find it confusing when exactly a GAT is required. To me it seems more consistent to always require a GAT when a lifetime argument occurs in an assoc ty constraint.</p>



<a name="242860744"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860744" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860744">(Jun 16 2021 at 10:23)</a>:</h4>
<p>it should not error, I agree, I'm just trying to decide where I think the code is going wrong</p>



<a name="242860763"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860763" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860763">(Jun 16 2021 at 10:23)</a>:</h4>
<p>your PR <em>might</em> be right, but something still feels unresolved t ome</p>



<a name="242860774"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860774" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860774">(Jun 16 2021 at 10:23)</a>:</h4>
<p>unfortunately I really have to make breakfast now</p>



<a name="242860791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860791">(Jun 16 2021 at 10:23)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116009">nikomatsakis</span> <a href="#narrow/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450/near/242860763">said</a>:</p>
<blockquote>
<p>your PR <em>might</em> be right, but something still feels unresolved t ome</p>
</blockquote>
<p>that is, in my own understanding, not the PR per se</p>



<a name="242860872"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242860872" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242860872">(Jun 16 2021 at 10:24)</a>:</h4>
<p>basically i'm trying to decide if the normalization should be producing a different result</p>



<a name="242867497"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242867497" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242867497">(Jun 16 2021 at 11:34)</a>:</h4>
<p>(I’d need to dig deeper to understand what <code>rustc —rr ,,,</code> buys us over <code>rr rustc ...</code>. The main advantage I can see is that it would integrate with <code>rustup</code> so that rr would get attached to the inner <code>rustc</code> binary that’s really driving things.)</p>



<a name="242990680"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990680" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990680">(Jun 17 2021 at 09:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> yes. That plus maybe some options.</p>



<a name="242990753"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990753" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990753">(Jun 17 2021 at 09:07)</a>:</h4>
<p><span class="user-mention" data-user-id="328097">@BN</span> ok, I dug more into this. I think your PR is actually correct, although it's a touch inconsistent, and we might want to do the fix closer to the point of the ICE.</p>



<a name="242990786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990786">(Jun 17 2021 at 09:08)</a>:</h4>
<p>So, for my own edification, what's happening is that the reference to <code>'a</code> is coming out from the parameter environment</p>



<a name="242990890"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990890" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990890">(Jun 17 2021 at 09:08)</a>:</h4>
<p>so basically any time that you normalize a type in the NLL code, you have to be prepared that it contains funky named regions like <code>'static</code> or <code>'a</code> that may have come from the <code>param_env</code></p>



<a name="242990913"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990913" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990913">(Jun 17 2021 at 09:09)</a>:</h4>
<p>other parts of the code however don't go and do a "renumbering" after this, instead they do that lazilly</p>



<a name="242990943"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242990943" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242990943">(Jun 17 2021 at 09:09)</a>:</h4>
<p>see e.g. <a href="https://github.com/rust-lang/rust/blob/7bd795387bbcfc4454541bdf20d51d385033e0fa/compiler/rustc_mir/src/borrow_check/type_check/relate_tys.rs#L104-L106">the type relation code</a>, which does:</p>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="w">            </span><span class="kd">let</span><span class="w"> </span><span class="n">sub</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">borrowck_context</span><span class="p">.</span><span class="n">universal_regions</span><span class="p">.</span><span class="n">to_region_vid</span><span class="p">(</span><span class="n">sub</span><span class="p">);</span><span class="w"></span>
<span class="w">            </span><span class="kd">let</span><span class="w"> </span><span class="n">sup</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">borrowck_context</span><span class="p">.</span><span class="n">universal_regions</span><span class="p">.</span><span class="n">to_region_vid</span><span class="p">(</span><span class="n">sup</span><span class="p">);</span><span class="w"></span>
</code></pre></div>



<a name="242991328"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242991328" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242991328">(Jun 17 2021 at 09:13)</a>:</h4>
<p>I think that means we want this code instead of the code which ICEs</p>



<a name="242991332"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242991332" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242991332">(Jun 17 2021 at 09:13)</a>:</h4>
<div class="codehilite" data-code-language="Rust"><pre><span></span><code><span class="w">                </span><span class="kd">let</span><span class="w"> </span><span class="k">mut</span><span class="w"> </span><span class="n">subst_regions</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="fm">vec!</span><span class="p">[</span><span class="bp">self</span><span class="p">.</span><span class="n">universal_regions</span><span class="p">.</span><span class="n">fr_static</span><span class="p">];</span><span class="w"></span>
<span class="w">                </span><span class="kd">let</span><span class="w"> </span><span class="n">universal_substs</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">infcx</span><span class="p">.</span><span class="n">tcx</span><span class="p">.</span><span class="n">fold_regions</span><span class="p">(</span><span class="n">substs</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="k">mut</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w"> </span><span class="o">|</span><span class="n">region</span><span class="p">,</span><span class="w"> </span><span class="n">_</span><span class="o">|</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                    </span><span class="kd">let</span><span class="w"> </span><span class="n">vid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="bp">self</span><span class="p">.</span><span class="n">universal_regions</span><span class="p">.</span><span class="n">to_region_vid</span><span class="p">(</span><span class="n">region</span><span class="p">);</span><span class="w"></span>
<span class="w">                    </span><span class="n">subst_regions</span><span class="p">.</span><span class="n">push</span><span class="p">(</span><span class="n">vid</span><span class="p">);</span><span class="w"></span>
<span class="w">                    </span><span class="bp">self</span><span class="p">.</span><span class="n">definitions</span><span class="p">[</span><span class="n">vid</span><span class="p">].</span><span class="n">external_name</span><span class="p">.</span><span class="n">unwrap_or_else</span><span class="p">(</span><span class="o">||</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w">                        </span><span class="n">infcx</span><span class="w"></span>
<span class="w">                            </span><span class="p">.</span><span class="n">tcx</span><span class="w"></span>
<span class="w">                            </span><span class="p">.</span><span class="n">sess</span><span class="w"></span>
<span class="w">                            </span><span class="p">.</span><span class="n">delay_span_bug</span><span class="p">(</span><span class="n">span</span><span class="p">,</span><span class="w"> </span><span class="s">"opaque type with non-universal region substs"</span><span class="p">);</span><span class="w"></span>
<span class="w">                        </span><span class="n">infcx</span><span class="p">.</span><span class="n">tcx</span><span class="p">.</span><span class="n">lifetimes</span><span class="p">.</span><span class="n">re_static</span><span class="w"></span>
<span class="w">                    </span><span class="p">})</span><span class="w"></span>
<span class="w">                </span><span class="p">});</span><span class="w"></span>
</code></pre></div>



<a name="242991769"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242991769" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242991769">(Jun 17 2021 at 09:18)</a>:</h4>
<p>I'm going to push some commits to your branch, <span class="user-mention" data-user-id="328097">@BN</span></p>



<a name="242992174"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242992174" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242992174">(Jun 17 2021 at 09:23)</a>:</h4>
<p>done</p>



<a name="242996363"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242996363" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> BN <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242996363">(Jun 17 2021 at 10:06)</a>:</h4>
<p>Yes, that seems like the better approach.</p>



<a name="242997223"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242997223" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242997223">(Jun 17 2021 at 10:16)</a>:</h4>
<p>I'm going to r+ it, thanks again <span class="user-mention" data-user-id="328097">@BN</span> for the PR, I was going down some deadends there :)</p>



<a name="242999120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/144729-wg-traits/topic/TAIT%20%2383190%2C%20%2378450/near/242999120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> BN <a href="https://rust-lang.github.io/zulip_archive/stream/144729-wg-traits/topic/TAIT.20.2383190.2C.20.2378450.html#242999120">(Jun 17 2021 at 10:37)</a>:</h4>
<p>Glad I could help.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>